<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class PagarSiguientePaso extends CI_Controller {

    public function __construct() {
        parent::__construct();
        session_start();

        $this->load->model('historial_pago_afiliacionm');
        $this->load->model('cuenta_x_usuariom');
        $this->load->model('cuentam');
        $this->load->model('cuartom');
        $this->load->model('establecimientom');
    }

    public function index() {
        $this->validarDatos();
       //   var_dump($_POST);
        $data = array();
        $this->loadData($data);
        $this->load->view('header', $data);
        $this->load->view('pagarSiguientePasoV');
        $this->load->view('footer');
    }

    public function loadData(&$data) {
        $data["tab"] = "pagarSiguientePaso";

        $cuenta = $this->cuenta_x_usuariom->obtenerRegistro($_SESSION["establecimiento"]["id_establecimiento"], $_SESSION["usuario"]["id_usuario"]);
        $tipoCuenta = $this->cuentam->obtenerRegistro($cuenta[0]->id_cuenta);
        $tipoCuenta = $tipoCuenta[0]->tipo;

        $habitacionesAdicionales = $this->establecimientom->obtenerDatos("habitaciones_adicionales", $_SESSION["establecimiento"]["id_establecimiento"]);
        $habitacionesAdicionales = $habitacionesAdicionales[0]->habitaciones_adicionales;

        $producto = $_POST["producto"];

        $valorMensual = 30 + $habitacionesAdicionales + $_POST["cantidadHabitaciones"];

        $valorTotalSinDescuento = $valorMensual * $producto;

        $descuento = 0;

        if ($producto == "3") {
            $descuento = $valorTotalSinDescuento * 0.05;
            $valorFinal = $valorTotalSinDescuento * 0.95;
            $reference = "3 meses";
        } else if ($producto == "6") {
            $descuento = $valorTotalSinDescuento * 0.1;
            $valorFinal = $valorTotalSinDescuento * 0.9;
            $reference = "6 meses";
        } else if ($producto == "12") {
            $descuento = $valorTotalSinDescuento * 0.2;
            $valorFinal = $valorTotalSinDescuento * 0.8;
            $reference = "12 meses";
        }
        $quienPaga = $_POST["nombre"];

        $emailQuienPaga = $_POST["email"];

        // echo "$tipoCuenta <br> $habitacionesAdicionales <br> $producto <br> $valorMensual <br> $valorTotalSinDescuento <br> $descuento <br> $valorFinal <br> $quienPaga <br> $emailQuienPaga";

        $data["tipoCuenta"] = $tipoCuenta;
        $data["cantidadCuartos"] = $habitacionesAdicionales + $_POST["cantidadHabitaciones"];
        $data["cantidadMesesRecargar"] = $producto;
        $data["valorPorMes"] = $valorMensual;
        $data["valorTotalSinDescuento"] = $valorTotalSinDescuento;
        $data["descuento"] = $descuento;
        $data["valorFinal"] = $valorFinal;
        $data["ShopperName"] = $quienPaga;
        $data["ShopperEmail"] = $emailQuienPaga;

        $data["IdClient"] = "1873";
        $PINClient = "DEYSS9SMI51SAIZD";
        $TotalAmount = number_format($valorFinal, 2, ".", "");
        $data["IDRerefence"] = $this->historial_pago_afiliacionm->ultimoId();
        $data["IDRerefence"] = $data["IDRerefence"][0]->id;
        $data["IDRerefence"]++;
        $data["Reference"] = $reference;
        $data["Token"] = sha1("{$data["IdClient"]}-$PINClient-{$data["IDRerefence"]}-$TotalAmount");
        $data["BaseAmount"] = $TotalAmount;
        $data["TaxAmount"] = 0;
        $data["TotalAmount"] = $TotalAmount;
        $data["ShopperName"] = $_POST["nombre"];
        $data["ShopperEmail"] = $_POST["email"];
        $data["ExtraData1"] = $_SESSION["establecimiento"]["id_establecimiento"];
        $data["ExtraData2"] = $_SESSION["usuario"]["id_usuario"];
        $fecha_vencimiento = $this->establecimientom->obtenerDatos("fecha_vencimiento", $_SESSION["establecimiento"]["id_establecimiento"]);
        $data["ExtraData3"] = $fecha_vencimiento[0]->fecha_vencimiento;
    }

    private function validarDatos() {
        $flag = false;
        $this->escapar($_POST);
        if (empty($_POST["email"]) || empty($_POST["nombre"]) || empty($_POST["producto"])) {
            $flag = true;
        }
       else  if ($_POST["producto"] != "3" && $_POST["producto"] != "6" && $_POST["producto"] != "12") {
            $flag = true;
        }
        if ($flag) {
            $_SESSION["mensaje"]["contenido"] = "Datos incompletos, inténtalo nuevamente";
            $_SESSION["mensaje"]["tipo"] = "advertencia";
            header("location:pagar");
            exit();
        }
    }

}